import java.util.HashMap;
import java.util.Set;
import java.util.Map;
/**
 * 创建⼀个Map集合，⾥⾯有如下元素
 * {⾹蕉 = 5.6 ，樱桃 = 25 ，桃⼦ = 5.6 ， 苹果 = 2.3}
 * 按要求完成：
 * (1)	遍历该map集合，并且统计有多少种⽔果（key）,⽤两种⽅式进⾏遍历
 * (2)	将“⾹蕉”的价格修改为10.9，并删除桃⼦这组数据，
 * (3)	将修改后的map中所有key和value都输出到控制台
 */
public class Test2 {
    public static void main(String[] args) {
        // 创建并初始化Map集合
        Map<String, Double> fruitPrices = new HashMap<>();
        fruitPrices.put("香蕉", 5.6);
        fruitPrices.put("樱桃", 25.0);
        fruitPrices.put("桃子", 5.6);
        fruitPrices.put("苹果", 2.3);


        // (1) 两种方式遍历Map并统计水果种类
        System.out.println("=== 方式一：通过keySet遍历 ===");
        Set<String> keys = fruitPrices.keySet();
        for (String key : keys) {
            System.out.println(key + " = " + fruitPrices.get(key));
        }
        System.out.println("水果种类数量：" + fruitPrices.size());

        System.out.println("\n=== 方式二：通过entrySet遍历 ===");
        Set<Map.Entry<String, Double>> entries = fruitPrices.entrySet();
        for (Map.Entry<String, Double> entry : entries) {
            System.out.println(entry.getKey() + " = " + entry.getValue());
        }
        System.out.println("水果种类数量：" + fruitPrices.size());

        // (2) 修改香蕉价格并删除桃子
        fruitPrices.put("香蕉", 10.9); // 修改已有key的value
        fruitPrices.remove("桃子");    // 删除指定key的键值对

        // (3) 输出修改后的Map
        System.out.println("\n=== 修改后的水果价格 ===");
        for (Map.Entry<String, Double> entry : fruitPrices.entrySet()) {
            System.out.println(entry.getKey() + " = " + entry.getValue());
        }
    }
}

